package ProjetSyGops.metier;

import ProjetSyGops.metier.comm.IItineraire;

/**
 * Classe Itineraire.
 * Cette classe correspondra au final a l'itineraire du vol.
 * Dans un premier temps, elle ne comprend qu'un seul attribut, la duree du vol.
 * Par la suite, elle prendra en parametre la distance ainsi que la vitesse moyenne de vol
 * afin de pouvoir calculer (v=d/t) les differents parametres de vol (duree, distance et temps).
 * Elle servira aussi de point de base pour la cartographie du plan de vol, si l'equipe a le temps
 * de developper cette fonctionnalite.
 * @author Groupe CS
 * @version 1.0 du 25/07/11
 */

public class Itineraire implements IItineraire {

	// ATTRIBUTS
	/** La duree du vol */
	private int dureeVol;

	// CONSTRUCTEUR PUBLIC

	/**
	 * Constructeur publique.
	 * Il initialise la duree de vol avec celle qui lui est passee en parametre
	 * qui ne peut etre negative ou nulle sinon on renvoie une RuntimeException.
	 * @param duree duree du vol.
	 */
	public Itineraire(int duree) {
		setDureeVol(duree);
	}

	// ACCESSEURS

	/**
	 * Getter de la duree de vol.
	 * @return dureeVol duree du vol.
	 */
	public int getDureeVol() {
		return dureeVol;
	}

	/**
	 * Setter de la duree de vol.
	 * Elle ne peut etre negative sinon on renvoie une RuntimeException.
	 * @param DureeVol nouvelle duree du vol.
	 */
	public void setDureeVol (int DureeVol) {
		if (DureeVol > 0) {
			this.dureeVol = DureeVol;
		} else {
			throw new RuntimeException("La duree de vol ne peut etre negative ou nulle");
		}
	}	
}
